用過 Docker 的朋友,應該能理解 Docker Image 就像一個樣板。在要啟動容器時,先指定要用的樣板 (Docker Image),然後選擇性的餵入一些參數或環境變數覆蓋掉樣板預設的設定,這樣我們就可以用同一個樣板,啟動幾個功能接近但有些微差異的容器。
但在容器平台上,樣板的概念要再複雜一點點。
所以容器平台上的樣板,會再多定義一些東西。樣板上也是可以挖幾個洞,讓使用者可以餵入想要的設定。
如同我們希望 Docker Image 和 餵入的設定 組合起來,能夠唯一的定義一個容器。我們也希望 容器平台上的樣板 和 餵入的設定 結合起來,能唯一的定義一個應用所需的環境。
其實你之前已經看過一個樣板的範例了,在將這個樣板定義餵入容器平台後,容器平台會根據定義內容產生或分派對應的容器與資源;或者是讓使用者能夠以此樣板為基礎,設定參數(就像之前開jenkins時可以輸入參數)來調整應用的定義。
每個容器平台會有各自的樣板定義方式。
建立及維護樣板是環境/工具提供者在容器平台上最重要的任務之一,另一個重要任務是建立及維護所需的容器映像檔。
註:本系列同步更新在 GitBook 上